The configuration of computing devices is ever increasing. For example, use of computing devices expanded with the advent of desktop personal computers. Configurations of personal computers continued to expand and thus so too did the pervasiveness of computing devices in everyday life, such as from the desktop computer to laptop computers, netbooks, mobile communications devices such as mobile phones and tablet computers, and so on.
As these configurations continue to expand, there is an increasing focus in some instances on making a single device that is usable in a variety of different configurations. A user of a tablet device may, for instance, connect the tablet device to a mouse and keyboard so that the mouse and keyboard may be used to provide input to the tablet device. At other times, the user may use a stylus to provide input to the tablet device. Further, the user may not use the tablet device with any additional input devices but may instead interact with the tablet device simply using touch functionality of the tablet device. In some conventional approaches, an application may display a same user interface regardless of whether a user interacts with the application using a mouse and keyboard, a stylus, or just touch functionality. In other conventional approaches, an application may support interactions involving just one particular configuration of the device, e.g., using touch functionality but not using a mouse and keyboard. However, these approaches may hamper experience of a user.